// 首先导入 Koa
const Koa = require('koa')
// 导入托管静态资源文件的包
const serve = require('koa-static')
// 引入解决 histroy 问题的包
const { historyApiFallback } = require('koa2-connect-history-api-fallback')
// 引入解决跨域问题的包
const proxy = require('koa2-proxy-middleware')

// 实例化 Koa，用来创建服务器
const app = new Koa()

// 配置解决跨域问题的包
app.use(proxy({
  targets: {
    '/api/(.*)': {
        target: 'http://ihrm-java.itheima.net', //后端服务器地址
        changeOrigin: true
    }
  }
}))

// 使用上面的包提供的方法，解决 histroy 问题
app.use(historyApiFallback({
  // 如果请求地址不是以 /api 开头，就会返回配置好的 index.html
  whiteList: ['/api']
}))

// 托管静态资源文件
app.use(serve(__dirname + "/public"))

// 监听端口，运行服务
app.listen(9000, () => {
  console.log('服务器已经启动')
})
